#ifndef MEGADECLARATIVECLIPBOARDMODEL_H
#define MEGADECLARATIVECLIPBOARDMODEL_H

#include <QtDeclarative/QDeclarativeItem>
#include <QtDeclarative/QDeclarativeParserStatus>
#include <QtGui/QSortFilterProxyModel>

// forward declarations
class MegaDeclarativeClipboardModelPrivate;		// PIMPL class


// main class declaration
class MegaDeclarativeClipboardModel
	: public QSortFilterProxyModel
	, public QDeclarativeParserStatus
{
	Q_OBJECT
	Q_INTERFACES(QDeclarativeParserStatus)
	Q_DISABLE_COPY(MegaDeclarativeClipboardModel)

public:
	explicit MegaDeclarativeClipboardModel(QObject * _parent = 0);
	virtual ~MegaDeclarativeClipboardModel();

public:
	// parser status
	virtual void classBegin();
	virtual void componentComplete();

public:
	Q_INVOKABLE bool activate(int _index);

private:
	MegaDeclarativeClipboardModelPrivate * const d_ptr;
	Q_DECLARE_PRIVATE(MegaDeclarativeClipboardModel)
};

QML_DECLARE_TYPE(MegaDeclarativeClipboardModel)

#endif // MEGADECLARATIVECLIPBOARDMODEL_H
